package cn.gudian.taglib.cms.Admin

import cn.gudian.cms.Admin.AdminU
import cn.gudian.cms.Admin.AuthSession
/**
 * 访问权限的设置
 */
class AdminAuthTagLib {
  static namespace = "gd"  //定义该系统的命名空间

  /**
   * 用户权限验证
   * 使用方法： <gd:isPermit roles="ARCHIVES_ADD" info="true"> </gd:isPermit>
   * 如果没有权限的话什么都不显示
   */
  def isPermit = {attrs, body ->
    def roles = attrs['roles']
    def info = attrs['info']
    AdminU u = AuthSession.getUser(session)
    if (!u) {
      return false
    }
    if (u.getAdminRole().toString().indexOf("SYSTEM_ADMIN") >= 0) {
      out << body()
    } else if (roles && u.getAdminRole().toString().indexOf(roles) >= 0) {
      out << body()
    } else {
      if (info == "true") {
        out << "没有权限"
      }
    }
  }


}